# -*- coding: utf-8 -*-
print('包含中文的str')
print(ord('A'))
print(ord('中'))
print(chr(66))
print(chr(25991))
print('\u4e2d\u6587')
# Python对bytes类型的数据用带b前缀的单引号或双引号表示：
x = b'ABC'
print(x )
# 以Unicode表示的str通过encode()方法可以编码为指定的bytes，例如：
print( 'ABC'.encode('ascii'))
print('中文'.encode('utf-8'))
# 含有中文的str无法用ASCII编码，因为中文编码的范围超过了ASCII编码的范围，Python会报错。
# print('中文'.encode('ascii'))
# 如果我们从网络或磁盘上读取了字节流，那么读到的数据就是bytes。要把bytes变为str，就需要用decode()方法：
print( b'ABC'.decode('ascii'))
print( b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8'))
# 如果bytes中包含无法解码的字节，decode()方法会报错：
print(b'\xe4\xb8\xad\xff'.decode('utf-8'))
# 如果bytes中只有一小部分无效的字节，可以传入errors='ignore'忽略错误的字节：
print( b'\xe4\xb8\xad\xff'.decode('utf-8', errors='ignore') )
print( len('ABC') )
print(len('中文') )
print(len(b'ABC') )
print( len(b'\xe4\xb8\xad\xe6\x96\x87') )
print(len('中文'.encode('utf-8')))
print('%2d-%02d' % (3, 1))
print('%.2f' % 3.1415926)
print('Age: %s. Gender: %s' % (25, True) )
print('growth rate: %d %%' % 7 )
print('Hello, {0}, 成绩提升了 {1:.1f}%'.format('小明', 17.125) )
